package com.huatai.datacenter.entity.datadesensitization;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * @author gusiyi
 * @version 1.0
 * @className DesensitizationRuleEntity
 * @description 描述：
 * @date 2023/6/12 9:50
 */
@TableName("tb_desensitization_rule")
@ApiModel(value = "脱敏脱密规则实体类",description = "脱敏脱密规则实体类")
@Data
public class DesensitizationRuleEntity {

	@TableId(value = "id", type = IdType.ASSIGN_ID)
	@ApiModelProperty("脱敏脱密规则id")
	private Long id;

	@ApiModelProperty("脱敏脱密规则名称")
	private String desensitizationName;

	@ApiModelProperty("数据模型id")
	private Long dataModelId;

	@ApiModelProperty("数据模型名称")
	private String dataModelName;

	@ApiModelProperty("脱敏脱密字段")
	private String desensitizationFieldName;

	@ApiModelProperty("脱敏脱密类型编码")
	private Integer desensitizationTypeNum;

	@ApiModelProperty("脱敏脱密类型名称")
	private String desensitizationTypeName;

	@ApiModelProperty("脱敏脱密规则类型编码")
	private Integer desensitizationRuleTypeNum;

	@ApiModelProperty("脱敏脱密规则类型名称")
	private String desensitizationRuleTypeName;

	@ApiModelProperty("创建人id")
	private Long createUserid;

	@TableField(fill = FieldFill.INSERT)
	@ApiModelProperty("创建时间")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
	private LocalDateTime createTime;

	@ApiModelProperty("更新人id")
	private Long updateUserid;

	@ApiModelProperty("更新时间")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
	@TableField(fill = FieldFill.INSERT_UPDATE)
	private LocalDateTime updateTime;

	@ApiModelProperty("删除标志(默认为0表示未删除)")
	@TableField(fill = FieldFill.INSERT)
	private Boolean deleted = Boolean.FALSE;

	@TableField(exist = false)
	@ApiModelProperty("当前页码")
	private Integer pageIndex;

	@TableField(exist = false)
	@ApiModelProperty("显示条数")
	private Integer pageSize;

	@TableField(exist = false)
	@ApiModelProperty("加密对象")
	private Boolean desensitizationObj;




}
